package ltd.hanamaki.review.dataStruct;

import java.util.*;

public class ArrayListTest {

    public static void main(String[] args) {

        /* 定义数组 */
        Integer array[] = {1, 2, 3, 4, 5, 6, 7};
        System.out.println(array);

        /* 将数组转换为集合  在将 数组转换 为 集合的时候 数组的数据类型 一定要是  引用数据类型 */
        List<Integer> integers = Arrays.asList(array);
        System.out.println(integers);

        /* 将 集合 转换为  数组   */
        Object[] objects = integers.toArray();
        System.out.println(objects);


        /* 想要使用集合就要先 初始化 */
        ArrayList<String> list = new ArrayList<>();
        System.out.println(list);

        /* 初始化的集合中 长度 ？ */
        /* 获得 集合的  大小 */
        int size = list.size();
        System.out.println(size);

        /* 如何向 集合中加值 */
        list.add("first");
        list.add("second");
        list.add("second");
        list.add("three");
        System.out.println(list);

        /* 将 test  添加至 下标为 1的位置 */
        list.add(1, "test");
        System.out.println(list);

        /* 如何判断集合 是否为空 */

        boolean empty = list.isEmpty();
        System.out.println(empty);

        /* 如何判断集合中是否包含某一个元素 */
        if (list.contains("test")) {
            // 执行业务
            System.out.println(true);
        } else {
            // 执行业务
            System.out.println(false);
        }

        /* 获得 集合中 指定 下标位置的  值 */
        String s = list.get(2);
        System.out.println(s);


        System.out.println(list);
        /* 普通 for  遍历 */
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

        /* 增强 for  遍历 */
        for (String s1 : list) {
            System.out.println(s1);
        }

        /* 使用  迭代器集合 来遍历  */
        Iterator<String> iterator = list.iterator();

        /* 如果 迭代器 对象中 有值  就获取 */
        while (iterator.hasNext()) {
            System.out.println(iterator.next());
        }


    }


}
